// 用户模块
import { reqGetUserInfo } from '@/api/user'
// 用户模块
export default {
  state: {
    // 用户信息
    userInfo: {}
  },
  mutations: {
    // 设置用户信息
    setUserInfo (state, userInfo) {
      state.userInfo = userInfo
    }
  },
  actions: {
    async getUserInfo (context) {
      const { data } = await reqGetUserInfo()
      // 如果状态码是0 提交对应的mutation存储用户信息
      if (data.code === 0) {
        context.commit('setUserInfo', data.data)
      }
    }
  },
  getters: {
    // 动态计算用户的名字
    userName (state) {
      return state.userInfo.nickname || state.userInfo.username
    },
    // 动态计算文本头像
    textAvatar (state) {
      return state.userInfo.username ? state.userInfo.username.charAt(0).toUpperCase() : ''
    }
  },
  namespaced: true // 开启命名空间
}
